1. Field of the Invention
The present invention relates to software-testing. More specifically, the present invention relates to a method and apparatus for testing a binding Application Programming Interface (API).
2. Related Art
Computing systems usually provide programmers with a native Application Programming Interface (API), such as a set of system libraries, to facilitate creating software applications for the computing systems. However, using this native API to create complex software applications can be difficult because a native API typically provides only a basic set of commands to a programmer. Consequently, programmers will often create a “binding API”, which is bound to the native API, but includes a greater selection of commands than the native API. However, for a given command flow, determining whether the binding API produces an equivalent result to the native API can be difficult because the binding API may not be mapped to the native API in a one-to-one relationship. Furthermore, many binding APIs are designed for use with a resource-constrained device, which exacerbates the problem of testing the binding API because of a lack of resources for executing test code on the resource-constrained device. Moreover, binding APIs are often created at a high level of abstraction, which enables the creation of hardware and operating system independent functionality, but which further adds to the difficulty of testing the binding API.
Hence, what is needed is a method and apparatus for testing a binding Application Programming Interface without the problems listed above.